using System;

namespace TimeMachine.Engine.Vcs
{
	public interface IChangesProcessor
	{
		void ProcessChanges(int rev, ProcessChangesParams processParams);
	}

	public class ProcessChangesParams
	{
		public ProcessChangesParams()
		{
			OnNextFile = s => true;
			OnNextChunk = () => { };
			OnNextChange = change => { };
		}

		public Func<string, bool> OnNextFile { get; set; }
		public Action OnNextChunk { get; set; }
		public Action<LineChangeInfo> OnNextChange { get; set; }
	}
}